1. Field of the Invention
This invention relates in general to database management systems performed by computers, and in particular, to the optimization of SQL queries in a relational database management system using early-out join transformations.
2. Description of Related Art
Relational DataBase Management System (RDBMS) software using a Structured Query Language (SQL) interface is well known in the art. The SQL interface has evolved into a standard language for RDBMS software and has been adopted as such by both the American Nationals Standard Organization (ANSI) and the International Standards Organization (ISO).
In RDBMS software, all data is externally structured into tables. The SQL interface allows users to formulate relational operations on the tables either interactively, in batch files, or embedded in host languages such as C, COBOL, etc. Operators are provided in SQL that allow the user to manipulate the data, wherein each operator operates on either one or two tables and produces a new table as a result. The power of SQL lies on its ability to link information from multiple tables or views together to perform complex sets of procedures with a single statement.
One of the most important operations in the execution of SQL queries is the join of two or more tables. However, performing joins operations can be quite costly in terms of performance, because each row in a first table must be joined with multiple rows in a second table. Thus, techniques have been developed for optimizing SQL query expressions involving joins. Researchers, including the applicants of the present invention, have performed pioneering work in this area, for example, as reflected in the following publication: Hamid Pirahesh, Joseph Hellerstein, and Waqar Hasan, "Extensible/Rule Based Query Rewrite Optimization in STARBURST," Proceedings of ACM SIGMOD '92 International Conference on Management of Data, San Diego, Calif. 1992, (hereinafter referred to as "[PIRA92]"). Nonetheless, there exists a need in the art for additional optimization techniques for join operations.